package com.jeez.module.sys.entity;

import javax.persistence.Basic;
import javax.persistence.Entity;
import javax.persistence.Id;
import java.sql.Date;

/**
 * @author: Felix
 * @date: 2018-7-1
 * @version: v1.0
 * @description:
 */
@Entity
@javax.persistence.Table(name = "t_sys_user_ext", schema = "", catalog = "smartdb")
public class TSysUserExt {
    private long id;

    @Id
    @javax.persistence.Column(name = "id")
    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    private String profile;

    @Basic
    @javax.persistence.Column(name = "profile")
    public String getProfile() {
        return profile;
    }

    public void setProfile(String profile) {
        this.profile = profile;
    }

    private String leader;

    @Basic
    @javax.persistence.Column(name = "leader")
    public String getLeader() {
        return leader;
    }

    public void setLeader(String leader) {
        this.leader = leader;
    }

    private Date offerDate;

    @Basic
    @javax.persistence.Column(name = "offer_date")
    public Date getOfferDate() {
        return offerDate;
    }

    public void setOfferDate(Date offerDate) {
        this.offerDate = offerDate;
    }

    private String offerStatus;

    @Basic
    @javax.persistence.Column(name = "offer_status")
    public String getOfferStatus() {
        return offerStatus;
    }

    public void setOfferStatus(String offerStatus) {
        this.offerStatus = offerStatus;
    }

    private String tryout;

    @Basic
    @javax.persistence.Column(name = "tryout")
    public String getTryout() {
        return tryout;
    }

    public void setTryout(String tryout) {
        this.tryout = tryout;
    }

    private Date transferDate;

    @Basic
    @javax.persistence.Column(name = "transfer_date")
    public Date getTransferDate() {
        return transferDate;
    }

    public void setTransferDate(Date transferDate) {
        this.transferDate = transferDate;
    }

    private Date leaveDate;

    @Basic
    @javax.persistence.Column(name = "leave_date")
    public Date getLeaveDate() {
        return leaveDate;
    }

    public void setLeaveDate(Date leaveDate) {
        this.leaveDate = leaveDate;
    }

    private String sex;

    @Basic
    @javax.persistence.Column(name = "sex")
    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    private Date borthDate;

    @Basic
    @javax.persistence.Column(name = "borth_date")
    public Date getBorthDate() {
        return borthDate;
    }

    public void setBorthDate(Date borthDate) {
        this.borthDate = borthDate;
    }

    private String schoolRecord;

    @Basic
    @javax.persistence.Column(name = "school_record")
    public String getSchoolRecord() {
        return schoolRecord;
    }

    public void setSchoolRecord(String schoolRecord) {
        this.schoolRecord = schoolRecord;
    }

    private String cardNo;

    @Basic
    @javax.persistence.Column(name = "card_no")
    public String getCardNo() {
        return cardNo;
    }

    public void setCardNo(String cardNo) {
        this.cardNo = cardNo;
    }

    private String workAddress;

    @Basic
    @javax.persistence.Column(name = "work_address")
    public String getWorkAddress() {
        return workAddress;
    }

    public void setWorkAddress(String workAddress) {
        this.workAddress = workAddress;
    }

    private String homeAddress;

    @Basic
    @javax.persistence.Column(name = "home_address")
    public String getHomeAddress() {
        return homeAddress;
    }

    public void setHomeAddress(String homeAddress) {
        this.homeAddress = homeAddress;
    }

    private String band;

    @Basic
    @javax.persistence.Column(name = "band")
    public String getBand() {
        return band;
    }

    public void setBand(String band) {
        this.band = band;
    }

    private String office;

    @Basic
    @javax.persistence.Column(name = "office")
    public String getOffice() {
        return office;
    }

    public void setOffice(String office) {
        this.office = office;
    }

    private String postId;

    @Basic
    @javax.persistence.Column(name = "post_id")
    public String getPostId() {
        return postId;
    }

    public void setPostId(String postId) {
        this.postId = postId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o)
            return true;
        if (o == null || getClass() != o.getClass())
            return false;

        TSysUserExt that = (TSysUserExt) o;

        if (id != that.id)
            return false;
        if (profile != null ? !profile.equals(that.profile) : that.profile != null)
            return false;
        if (leader != null ? !leader.equals(that.leader) : that.leader != null)
            return false;
        if (offerDate != null ? !offerDate.equals(that.offerDate) : that.offerDate != null)
            return false;
        if (offerStatus != null ? !offerStatus.equals(that.offerStatus) : that.offerStatus != null)
            return false;
        if (tryout != null ? !tryout.equals(that.tryout) : that.tryout != null)
            return false;
        if (transferDate != null ? !transferDate.equals(that.transferDate) : that.transferDate != null)
            return false;
        if (leaveDate != null ? !leaveDate.equals(that.leaveDate) : that.leaveDate != null)
            return false;
        if (sex != null ? !sex.equals(that.sex) : that.sex != null)
            return false;
        if (borthDate != null ? !borthDate.equals(that.borthDate) : that.borthDate != null)
            return false;
        if (schoolRecord != null ? !schoolRecord.equals(that.schoolRecord) : that.schoolRecord != null)
            return false;
        if (cardNo != null ? !cardNo.equals(that.cardNo) : that.cardNo != null)
            return false;
        if (workAddress != null ? !workAddress.equals(that.workAddress) : that.workAddress != null)
            return false;
        if (homeAddress != null ? !homeAddress.equals(that.homeAddress) : that.homeAddress != null)
            return false;
        if (band != null ? !band.equals(that.band) : that.band != null)
            return false;
        if (office != null ? !office.equals(that.office) : that.office != null)
            return false;
        if (postId != null ? !postId.equals(that.postId) : that.postId != null)
            return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = (int) (id ^ (id >>> 32));
        result = 31 * result + (profile != null ? profile.hashCode() : 0);
        result = 31 * result + (leader != null ? leader.hashCode() : 0);
        result = 31 * result + (offerDate != null ? offerDate.hashCode() : 0);
        result = 31 * result + (offerStatus != null ? offerStatus.hashCode() : 0);
        result = 31 * result + (tryout != null ? tryout.hashCode() : 0);
        result = 31 * result + (transferDate != null ? transferDate.hashCode() : 0);
        result = 31 * result + (leaveDate != null ? leaveDate.hashCode() : 0);
        result = 31 * result + (sex != null ? sex.hashCode() : 0);
        result = 31 * result + (borthDate != null ? borthDate.hashCode() : 0);
        result = 31 * result + (schoolRecord != null ? schoolRecord.hashCode() : 0);
        result = 31 * result + (cardNo != null ? cardNo.hashCode() : 0);
        result = 31 * result + (workAddress != null ? workAddress.hashCode() : 0);
        result = 31 * result + (homeAddress != null ? homeAddress.hashCode() : 0);
        result = 31 * result + (band != null ? band.hashCode() : 0);
        result = 31 * result + (office != null ? office.hashCode() : 0);
        result = 31 * result + (postId != null ? postId.hashCode() : 0);
        return result;
    }
}
